Skip to content

More flexible moreJoins#823

Merged
marcoeilers merged 4 commits into
masterfrom
meilers_flexible_more_joins
Mar 23, 2024
Merged

More flexible moreJoins#823
marcoeilers merged 4 commits into
masterfrom
meilers_flexible_more_joins

Conversation

@marcoeilers

@marcoeilers marcoeilers commented Mar 22, 2024

Copy link
Copy Markdown
Contributor

Changes --moreJoins from a boolean option that is either completely off or joins everything to an integer option that has two steps:

  • 1 joins all branches resulting from impure conditionals immediately (this is very similar to --conditionalizePermissions but doesn't have to be conservative and can thus join all such branches)
  • 2 joins all impure branches immediately and joins branches in the CFG when possible
  • 0 is off.

Similarly, the @moreJoins annotation can be used in the following ways:

  • @moreJoins() selects level 2
  • @moreJoins("n") selects level n
  • everything else is invalid and results in a warning.

@marcoeilers marcoeilers requested a review from jcp19 March 23, 2024 13:22
Comment thread src/main/scala/Config.scala
@marcoeilers marcoeilers merged commit 9e3d0f8 into master Mar 23, 2024
@marcoeilers marcoeilers deleted the meilers_flexible_more_joins branch March 23, 2024 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants